package com.pg.mapper;

import java.util.List;

import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.pg.entity.dd.EipSalesOrder;
import com.pg.entity.dd.OrderView;

/**
 * <p>
 * 销售订单Mapper 接口
 * </p>
 *
 * @author likl
 * @since 2020-07-06
 */
@Repository
public interface EipSalesOrderMapper extends BaseMapper<EipSalesOrder> {

    /**
     * 通过id逻辑删除
     *
     * @param puid 全库唯一码
     */
    void logicalDelete(@Param("puid") String puid);

    /**
     * 通过puid查询
     *
     * @param puid 全库唯一码
     * @return 销售订单
     */
    EipSalesOrder selectByPuid(@Param("puid") String puid);

    /**
     * 通过map查询
     *
     * @param modifyTime 修改时间
     * @param ioflag     状态
     * @return 结果集
     */
    List<OrderView> selectListByMap(@Param("modifyTime") String modifyTime, @Param("ioflag") String ioflag);

    /**
     * 分页列表查询
     *
     * @param page            分页参数
     * @param purchaserHqCode 采购方编码
     * @param puid            全库唯一码
     * @param soNo            销售订单号
     * @param supplierCode    供应商编码
     * @param subclassCode    种类编码
     * @param productName     物资名称
     * @param buyerName       采购方公司名称
     * @param conCode         合同编码
     * @param eipPoNo         采购订单号
     * @return 分页数据
     */
    List<EipSalesOrder> selectForList(Page<?> page, @Param("purchaserHqCode") String purchaserHqCode, @Param("puid") String puid, @Param("soNo") String soNo, @Param("supplierCode") String supplierCode, @Param("subclassCode") String subclassCode, @Param("productName") String productName, @Param("buyerName") String buyerName, @Param("conCode") String conCode, @Param("eipPoNo") String eipPoNo);


}
